$(function () {

    // 1.表单的校验
    // 使用表单校验插件
    $('.login-form').bootstrapValidator({
        // 1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [':disabled', ':hidden', ':not(:visible)'],

        // 2. 指定校验时的图标显示，默认是bootstrap风格
        feedbackIcons: {
            valid: 'glyphicon glyphicon-piggy-bank',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },

        // 3. 指定校验字段
        fields: {
            // 校验用户名 ==》 用户名不为空并且2 到6 位
            username: {
                validators: {
                    // 不能为空
                    notEmpty: {
                        message: '用户名不能为空'
                    },
                    // 长度校验 ==》 2 到6
                    stringLength: {
                        min: 2,
                        max: 6,
                        message: '用户名长度必须在2到6之间'
                    },
                    // 提示 ==》 当用户名错误的时候提示
                    callback: {
                        message: '用户名不正确'
                    }
                }
            },
            password: {
                validators: {
                    // 不能为空
                    notEmpty: {
                        message: '密码不能为空'
                    },
                    // 长度校验 ==》 6 到12
                    stringLength: {
                        min: 6,
                        max: 12,
                        message: '密码长度必须在2到6之间'
                    },
                    // 提示 ==》 当用户名错误的时候提示
                    callback: {
                        message: '密码不正确'
                    }
                }
            }
        }
    })


    // 2.重置按钮 ==》 点击重置按钮能进行值和样式的重置
    $('.btn-reset').click(function () {
        // 插件实现
        $(".login-form").data('bootstrapValidator').resetForm()
    })


    // 3.登录按钮 ==》 当输入正确的用户名和密码进行ajax请求给后台
    $(".login-form").on('success.form.bv', function (e) {

        // 阻止提交按钮的默认行为 ==》 阻止刷新
        e.preventDefault()


        // 表单获取到所有的键跟值的拼接
        let str = $('.login-form').serialize()

        $.ajax({
            // 请求类型
            type: "post",
            // 请求地址
            url: "/employee/employeeLogin",
            // 请求数据
            data: str,
            // 返回的数据  'text', 'xml', 'json', 'script'
            dataType: "json",
            success: function (res) {
                // 登录成功
                if (res.success) {
                    // 如果登录成功跳转到指定的页面
                    location.href = './index.html'
                }
                // 用户名错误
                if (res.error == 1000) {
                    $(".login-form").data('bootstrapValidator').updateStatus('username', 'INVALID', 'callback')
                }
                // 密码错误
                if (res.error == 1001) {
                    $(".login-form").data('bootstrapValidator').updateStatus('password', 'INVALID', 'callback')
                }
            }
        })
    })

})